using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using FEL.COM;
using FEL.BOD;
using FEL.PAR;
using FEL.INT;
using System.Text;
using System.Collections.Generic;
using System.Web.Services;
using System.Reflection;
using System.Globalization;

public partial class COM_COM_PROVEEDOR_CONTACTO : PaginaBaseKCG
{
    public Com_Proveedor Com_Proveedor_Actual
    {
        get
        {
            if (ViewState["COM_PROVEEDOR"] == null)
                ViewState["COM_PROVEEDOR"] = ObtenerProveedor();
            return (Com_Proveedor)ViewState["COM_PROVEEDOR"];
        }
    }


    Com_Proveedor ObtenerProveedor()
    {
        FEL.COM.BO_Com_Proveedor datos = new BO_Com_Proveedor();
        return datos.GetById("", Scope, Request.QueryString["Com_Proveedor_Id"])[0];

    }

    protected void Page_Load(object sender, EventArgs e)
    {
        gvcom_proveedor_contacto.DataBound += new EventHandler(gvcom_proveedor_contacto_DataBoundExiste);
        base.Page_Load(sender, e);
        cargarBotones();        
    }

    private void gvcom_proveedor_contacto_DataBoundExiste(object sender, EventArgs e)
    {
        if (gvcom_proveedor_contacto.DataKeys.Count <= 0)
        {
            btnProveedores.Enabled = false;            
        }
        else
        {
            btnProveedores.Enabled = true;            
        }
    }

    private void cargarBotones()
    {
        btnListado.Text = GetLocalResourceObject("Btn_Com_Proveedor_Contacto_ListadoRecursoKCG.Text").ToString();
        btnListado.ToolTip = GetLocalResourceObject("Btn_Com_Proveedor_Contacto_ListadoRecursoKCG.ToolTip").ToString();
        btnProveedores.Text = GetLocalResourceObject("BTN_COM_PROVEEDOR_CONTACTO_PROVEEDORESRecursoKCG.Text").ToString();
        btnProveedores.ToolTip = GetLocalResourceObject("BTN_COM_PROVEEDOR_CONTACTO_PROVEEDORESRecursoKCG.ToolTip").ToString();

    }

    protected override void DefinirParametrosFijosDeInsercion(System.Collections.Generic.List<DictionaryEntry> param)
    {
        if (Request.QueryString.Count > 0)
        {
            param.Add(new DictionaryEntry("Com_Proveedor_Id", Request.QueryString["Com_Proveedor_Id"]));
            param.Add(new DictionaryEntry("Par_Tipo_Identificacion_Codigo", Com_Proveedor_Actual.Par_Tipo_Identificacion_Codigo));
            param.Add(new DictionaryEntry("Par_Tipo_Identificacion_Nombre", Com_Proveedor_Actual.Par_Tipo_Identificacion_Nombre));
            param.Add(new DictionaryEntry("Par_Razon_Social_Codigo", Com_Proveedor_Actual.Par_Razon_Social_Codigo));
            param.Add(new DictionaryEntry("Par_Razon_Social_Numero", Com_Proveedor_Actual.Par_Razon_Social_Numero));
            param.Add(new DictionaryEntry("Par_Razon_Social_Nombre", Com_Proveedor_Actual.Par_Razon_Social_Nombre));

        }
        base.DefinirParametrosFijosDeInsercion(param);
    }

    protected override CheckBox CbInsertarMemoria
    {
        get { return null; }
    }

    protected override Type TipoObjeto
    {
        get { return typeof(global::Com_Proveedor_Contacto); }
    }

    protected override GridView Gv
    {
        get { return gvcom_proveedor_contacto; }
    }

    protected override FormView Fv
    {
        get { return fvcom_proveedor_contacto; }
    }

    protected override ObjectDataSource OdsGv
    {
        get { return odsgvcom_proveedor_contacto; }
    }

    protected override ObjectDataSource OdsDv
    {
        get { return odsfvcom_proveedor_contacto; }
    }

    protected override Button BResponderZoom
    {
        get { return Seleccionar; }
    }

    protected override Button BRegreso
    {
        get { return Atras; }
    }


    protected override Koala.KoalaWebControls.KFiltro KftFiltro
    {
        get { return kftFiltro; }
    }
    protected override string Contenedor
    {
        get { return "COM_PROVEEDOR_CONTACTO"; }
    }

    protected void nav_Siguiente(object sender, EventArgs e)
    {
        Gv_SelectedIndexChanged(sender, e);
    }

   

    [WebMethod]
    static public string[] GetTipo_Identificador(string prefixText, int count)
    {
        if (count == 0) count = 10;

        Scope s = (Scope)HttpContext.Current.Session["Scope"];

        FEL.PAR.BO_Par_Tipo_Identificacion TipoIdenti = new BO_Par_Tipo_Identificacion();
        List<Par_Tipo_Identificacion> litTipo_Identi = TipoIdenti.GetByLikeNombre("Nombre", s, prefixText + "%");

        List<string> opciones = new List<string>();
        for (int i = 0; i < litTipo_Identi.Count && i < count; i++)
        {
            string value = litTipo_Identi[i].Id;

            opciones.Add(AjaxControlToolkit.AutoCompleteExtender.CreateAutoCompleteItem(litTipo_Identi[i].Nombre, value));
        }
        return opciones.ToArray();
    }

    [WebMethod]
    static public string[] GetSocial_Numero(string prefixText, int count, string contextKey)
    {
        if (count == 0) count = 10;

        Scope s = (Scope)HttpContext.Current.Session["Scope"];

        FEL.PAR.BO_Par_Razon_Social RazonSocial = new BO_Par_Razon_Social();
        List<Par_Razon_Social> litRazon_Social = RazonSocial.GetByLikeNumero("Nombre", s, contextKey, prefixText + "%");
        List<string> opciones = new List<string>();
        for (int i = 0; i < litRazon_Social.Count && i < count; i++)
        {
            string value = litRazon_Social[i].Par_Tipo_Identificacion_Nombre + "||" +
                           litRazon_Social[i].Nombre + "||" +
                           litRazon_Social[i].Id;

            opciones.Add(AjaxControlToolkit.AutoCompleteExtender.CreateAutoCompleteItem(litRazon_Social[i].Numero, value));
        }
        return opciones.ToArray();
    }

    [WebMethod]
    static public string[] GetSocial_Nombre(string prefixText, int count, string contextKey)
    {
        if (count == 0) count = 10;

        Scope s = (Scope)HttpContext.Current.Session["Scope"];

        FEL.PAR.BO_Par_Razon_Social RazonSocial = new BO_Par_Razon_Social();
        List<Par_Razon_Social> litRazon_Social = RazonSocial.GetByLikeNombre("Nombre", s, contextKey, prefixText + "%");

        List<string> opciones = new List<string>();
        for (int i = 0; i < litRazon_Social.Count && i < count; i++)
        {
            string value = litRazon_Social[i].Par_Tipo_Identificacion_Nombre + "||" +
                           litRazon_Social[i].Numero + "||" +
                           litRazon_Social[i].Id;

            opciones.Add(AjaxControlToolkit.AutoCompleteExtender.CreateAutoCompleteItem(litRazon_Social[i].Nombre, value));
        }
        return opciones.ToArray();
    }

    protected void btnListado_Click(object sender, EventArgs e)
    {
        TextBox ArticuloId = (TextBox)Fv.FindControl("Id");
        Response.Redirect("~/COM/COM_PROVEEDOR_LISTADO.aspx?Com_Proveedor_Id=" + ArticuloId.Text);
    }

    protected void btnProveedores_Click(object sender, EventArgs e)
    {
        TextBox ProveedorId = (TextBox)Fv.FindControl("Com_Proveedor_Id");
        Response.Redirect("~/COM/COM_PROVEEDOR.aspx?Com_Proveedor_Id=" + ProveedorId.Text);
    }


}